package Self_Practice.PROJECT_3;
/*
本题我们要编写代码去除字符串 str 中的空格，然后返回去除空格后的字符串长度。

在本题的 Solution.java 中定义了一个 getLength 方法，
该方法有一个 String 类型的参数 str 代表需要进行操作的字符串，
你需要去除这个字符串中的空格并获得去除空格后的字符串长度，
最后返回这个字符串长度，返回值为 int 类型。
 */

public class Solution {
    //以下是第一种解法：
    /*由题知要计算除掉空格的字符串的长度，
    首先想到如何删除字符串中的所有空格，思考 String 是否提供了相关方法，
    replace 方法可以，该方法可以替换字符串中指定内容。
     */
    public int getLength(String str) {
        str = str.replace(" ", "");
        int length = str.length();
        return length;
    }

    //以下是第二种解法：
    /*
    由题知要计算除掉空格的字符串的长度，
    可以将字符串变成字符数组，再对每一个字符做是否是空格的判断，
    统计不是空格的字符数量。
     */
    public int getLength1(String str) {
        char[] chars = str.toCharArray();
        int count = 0;

        for (char c : chars) {  //此处采用增强型for循环
            if (!(c == ' ')) {
                count++;
            }
        }

        return count;
    }
}
